rm(list = ls())

library(tidyverse)
library(lfe)

## Load MP data

dat <- readRDS('data/mp_data.rds') %>%
  filter(vote_abstain_no_show == 0) %>%
  filter(elecper != 8) 

## Code whether MP was re-elected

re_elected_mps <- dat %>%
  count(mp_id) %>%
  filter(n > 1) %>%
  pull(mp_id)

dat <- dat %>%
  mutate(re_elected_bin = ifelse(mp_id %in% re_elected_mps, 1, 0))

## 

experience_covars <- c('nsdap_member', 
                       'syn_in_gem_bin', 
                       're_elected_bin',
                       'rel_cath',
                       'veteran_ww1',
                       'veteran_ww2', 
                       'capture_ww2',
                       'soviet_capture',
                       'exile_repressed_combined', 
                       'resistance_member')

experience_covars_labels <- c('NSDAP member', 
                              'Jewish presence',
                              'Catholic',
                              'WW1 Veteran', 
                              'WW2 Veteran',
                              'WW2 POW',
                              'Soviet POW',
                              'Repressed / Exile', 
                              'Resistance')


covars <- c('year_birth', 'gender', 'mandate', 'dualcand', 'closeness_district_categ')

##

m1 <-  paste('vote_yes', '~', paste(experience_covars[2:3], collapse = "+"),'', ' | elecper  | 0 | mp_id')
m2 <-  paste('vote_yes', '~', paste(experience_covars[2:3], collapse = "+"),'', ' | elecper + party_fe | 0 | mp_id')
m3 <-  paste('vote_yes', '~', paste(experience_covars[2:3], collapse = "+"),'', ' | elecper + party_fe + state_id | 0 | mp_id')
m4 <-  paste('vote_yes', '~', paste(experience_covars, collapse = "+"),'+', paste(covars, collapse = "+"), ' | elecper  | 0 | mp_id')
m5 <-  paste('vote_yes', '~', paste(experience_covars, collapse = "+"),'+', paste(covars, collapse = "+"), ' | elecper + party_fe | 0 | mp_id')
m6 <-  paste('vote_yes', '~', paste(experience_covars, collapse = "+"),'+', paste(covars, collapse = "+"), ' | elecper + party_fe + state_id | 0 | mp_id')

mlist <- list(m1, m2, m3, m4, m5, m6)

## Estimate 

mlist_res <- lapply(mlist, function(m){
  
  m_est <- felm(m %>% as.formula(),
                data = dat)
  
  return(m_est)
  
})

## To Table 


stargazer::stargazer(mlist_res, 
                     style  = 'ajps',
                     keep = c('syn_in_gem_bin', 're_elected_bin'),
                     covariate.labels = c('Jewish presence', 'MP re-elected (0/1)'))

